home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.object,comp.software-eng,comp.lang.c++
- Path: blackbush.xlink.net!slsv6bt!slsv6bt!kanze
- From: kanze@lts.sel.alcatel.de (James Kanze US/ESC 60/3/141 #40763)
- Subject: Re: Moving from C to C++
- In-Reply-To: vancleef@ohstpy.mps.ohio-state.edu's message of 10 Jan 96 02:40:13 -0500
- Message-ID: <KANZE.96Jan10115116@slsvewt.lts.sel.alcatel.de>
- Sender: news@lts.sel.alcatel.de
- Organization: SEL
- References: <4cs44p$3pk@ixnews8.ix.netcom.com> <30F2A73C.7519@i-o.com>
- <1996Jan10.024013.8711@ohstpy>
- Date: 10 Jan 1996 10:51:16 GMT
-
- In article <1996Jan10.024013.8711@ohstpy>
- vancleef@ohstpy.mps.ohio-state.edu writes:
-
- |> In article <30F2A73C.7519@i-o.com>, "David F. St.Clair" <dstclair@i-o.com> writes:
- |> > Rocco Pochy wrote:
- |> >
- |> >> Our company is looking at moving toward C++ and the object-oriented
- |> >> paradigm. Unfortunately, the engineering staff is trained in C. Does
- |> >> anybody have any experiences in moving from a structure C environment
- |> >> to that of an object-oriented C++ environment?
- |> >>
- |> >> Is it better to ease everyone into using C++ as a better C and take
- |> >> advantage of the encapsulation, getting people familar on the tools
- |> >> before jumping into a full object-oriented development? Or should
- |> >> one jump right in a take the learning curve hit, sacrificing time to
- |> >> market?
-
- [...]
- |> > After around 3-6 months, get some formal OO training. Suitcase the course in
- |> > as well. There are several good 5 day courses out there. Include managers in the
- |> > training classes. Make a big production of training and stress the importance.
- |> >
-
- |> Treating OO like it's the 'chapter at the end of the book' is a waste of
- |> their time. You must teach OO from the beginning.
-
- |> C++ is a better C only to C programmers who refuse to change from
- |> structures programming. If you C++ programmers, you are going to have to
- |> teach OO from the first day. Anythig else is a waste of time.
-
- Yes and no. In my experience, the additional syntax in C++ can be a
- real problem. My own solution has been basically what was
- recommended; first teach C++, and get people familiar with it, then
- attact the OO issues. The OO requires a totally new approach, and I
- find it beneficial not to be able to teach it at a high level, without
- having to hassle with all of the syntactical complexities of C++.
-
- One could argue that this is a problem of C++; teach the OO in a
- language that doesn't have so many syntactical complexities. In my
- experience, however, although C++ may be more complex than most, all
- languages have some syntactic quirks. And of course, once the OO
- learned, it must be applied immediatly; the language used to teach it
- must be one you are using in real applications.
-
- In some ways, you might liken it to learning a foreign language.
- Reading Racine is certainly a more significant activity than just
- learning to decline a few French verbs. But if you have to conciously
- analyse each verb in Racine, you're not going to appreciate the
- overall beauty of the play. C++ is the verbal declinations, OO is the
- literature. (I suppose some would argue that learning C++ to do OO is
- about like learning Russian to read Racine:-). I'll make no comment
- on that.)
-
- [...]
- |> I programmed in C for years. It took me *one week* to learn C++ when thrown
- |> into 50,000 lines of badly written C++ (written by C programmers who
- |> tried to use some OO concepts) and asked to 'make it work'. I
- |> did. I will never look back.
-
- I think I came up to spead pretty quickly, too. But there is a
- difference between a way that is possible, and a way that works
- generally for everyone.
-
- |> > Look for evolutionary changes/benefits, not revolutionary.
- |> >
-
- |> Sorry, but C++ is revolutionary. C++ is NOT a better C and teaching this
- |> to people on your payroll is a waste of money.
-
- C++ is not revolutionary in itself. The OO attitude is revolutionary.
- Which is precisely why it is non-trivial, and why I find it useful to
- get the low-level language details out of the way before presenting
- it.
- --
- James Kanze Tel.: (+33) 88 14 49 00 email: kanze@gabi-soft.fr
- GABI Software, Sarl., 8 rue des Francs-Bourgeois, F-67000 Strasbourg, France
- Conseils, Θtudes et rΘalisations en logiciel orientΘ objet --
- -- A la recherche d'une activitΘ dans une region francophone
-
-